This invention relates generally to a method of visually displaying changes to a system model and, more particularly, to a data analysis system and method that visually displays the consequences of changes in the input data of a system model by changing the attributes (e.g., size, color, image, border, etc.) of entities in an influence diagram depicting the system model.
It is often desirable to visually display data relating to a system or procedure so that a user can readily discern information therefrom. The benefits of providing visualization for system analysis includes cross-functional understanding of system relationships and intuitive communication of results, faster model validation, and higher acceptance of system models. For example, it may be desirable to determine what factors affect the profits from sales of a particular product, and how each factor affects other factors that are used to determine profit. Different systems and protocols exist in the art for visually displaying information. For example, products such as Visio from Microsoft and Analytica from Lumina Decision Systems offer examples of displaying data in various manners that allow a user to visually perceive such information.
One known technique for displaying information is by influence diagrams. An influence diagram is a graphical display that describes a system or operation as a series of images (bubbles, nodes, etc.) interconnected by arrows. FIG. 1 is an example of a simple influence diagram 10 that shows that profits are influenced by revenues and costs. Particularly, diagram 10 shows that an entity labeled profits 12 is directly related to an entity labeled revenues 14 and an entity labeled costs 16 by connecting arcs 18. The known influence diagrams may be useful for depicting influences, but they do not by themselves reveal the magnitude of influences.
Known systems analysis tools typically take input data, process it, and generate output. These known approaches, however, conceal the intermediate steps of the process and do not reveal most system interactions and dependencies. It would be desirable to provide a process that converts raw system information into useful quantities, and also visually and dynamically depicts the magnitude and importance of the system interactions that underlie the computation of the useful quantities. Such a depiction would allow for wider use of the process for more complex systems, and provide critical feedback to better control the system.
Many known system models are complex, having thousands of variables, inputs and time consuming intermediate calculations. Developing and debugging such models usually requires the study and analysis of smaller portions or sub-models of the entire model to provide a xe2x80x9cdivide and conquerxe2x80x9d approach to the overall system. Typically, this is a tedious and time-consuming task because a full data set must be specified and entered for the entire model, and all calculations must be performed (often with computer compilation) to study each sub-model that is identified. Moreover, it is very difficult to study the behavior of a specific sub-model under specified conditions (e.g., run a particular test), if the sub-model depends on values that are not entered as data, but are provided through intermediate calculations inside the full model. In other words, it is difficult to determine the response of a specific sub-model because the inputs to that sub-model may depend on the behavior of other sub-models outside of the specific sub-model.
Data spreadsheets provide one known technique for entering and processing data. However, between 40% and 80% of spreadsheets contain errors at their inception, and up to 30% of operational spreadsheets contain errors. The main cause of many such errors is the invisibility of spreadsheet calculations. In other words, it is impossible, at first glance, to determine whether a spreadsheet cell contains a number or a formula, and whether any other cells depend on that particular spreadsheet cell. Several spreadsheet-auditing tools have been developed to assist users by overlaying a graphical representation of calculation logic on top of spreadsheets. This is a big step forward in terms of auditing, but these techniques do not address the fundamental difficulties inherent in the initial design and later modification of the spreadsheet.
A visual modeling product exists in the art called DPL, available from Price-Waterhouse-Coopers, that manages the visible representations of spreadsheets. DPL has a rudimentary capability to convert simple spreadsheets into visual models. However, DPL cannot convert complex spreadsheets into visual representations, manage this representation, and maintain equivalence with the original spreadsheet.
What is needed is a data analysis tool that allows an immediate visual response of the parameters of a system model, including intermediary calculations, after a change in the input data of the model. It is, therefore, an object of the present invention to provide such a data analysis tool.
In accordance with the teachings of the present invention, a data analysis tool is disclosed that provides a technique for visualizing changes of a system model. The analysis tool includes constructing an influence diagram consisting of a series of calculation entities and data entities interconnected by arrows, where the entities correspond to parameters of the system model being analyzed. Input values are assigned to each of the data entities for a particular scenario, and the corresponding values are computed for the calculation entities. To provide ease of analysis, multiple values assigned to a single entity can be converted to a single aggregate value, such as an average value.
A new scenario is implemented by changing one or more of the input values to the data entities, thus providing different results for some or all of the calculation entities. A mathematical function is applied to each entity to modify its appearance based on the resulting values of the entities for the current and possibly other scenarios. For example, the change in magnitude of a certain entity can be shown by the size of the entity for the new scenario. Changes to each entity from the input of the new scenario can be, however, in a variety of forms, such as size of the entity, color of the entity, shading of the entity, etc. Additionally, the arrows that connect the various entities can also be modified in appearance based on the new values of the entities for the new scenario.